package GUI.common;

import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;

/**
*
* @author Josep M Sobrepere
*/
public class CarregaItemList {
	public static List<Item> CarregaItemList(List llista, Class c, String getDescripcio, String getId) throws ExceptionI18N{
		List<Item> resultat = new ArrayList<Item>();
		try{
			Method mDescripcio = c.getMethod(getDescripcio, null);
			Method mId = c.getMethod(getId, null);			
			String descripcio=null;
			Integer id=null;
			
			for(Object o: llista){
				descripcio=(String)mDescripcio.invoke(o, null);
				id=(Integer)mId.invoke(o, null);
				
				resultat.add(new Item(id, descripcio,o));
			}
		}catch(Exception e){
			//throw new TheItCrowdExceptionI18N(LanguageUtils.getMessage(TheItCrowdExceptionI18N.ERR_CARREGAR_LLISTA_ITEMS));			
		}
		return resultat;
	}

}
